信仰
所有的网络设计都可以分解为三个层面:宏观的理念、中观的架构和微观的实现。
理念属于信仰层面,是哲学社会学范畴。理念必须是简单和恒久的,要人人都能够听懂,可以代代相传。架构位于中间,把理想与现实有机地结合起来。架构必须是简洁和灵活的,业内人士都能够听得懂(至少保持一代人)。实现是属于技术层面的,功能模块与接口一起支撑起了架构。技术是必须可实现的,“书呆子”们能明白,几年一变。
信仰决定了架构,架构决定了实现。哪种信仰下的哪种架构会取得成功,主要取决于当时的技术条件和外部环境,但也有偶然因素。
互联网是计算机专家设计的一个大号版的图灵机,一个大号版的冯·诺伊曼计算机,一个大号版的智能手机。如果说,图灵是计算机的创世主,冯·诺伊曼是架构大师,那么比尔·盖茨和乔布斯等人就是互联网的泥瓦匠。
争议
20世纪60年代,随着计算机产业的兴起,计算机联网的需求开始出现。计算机业认为,计算机联网是计算机的一个新功能,因此叫计算机网络。电信业认为,计算机联网是通信的一个新(增值)业务,因此叫数据通信。
于是,终端的控制者计算机厂家与网络的控制者电信运营商,分别从需求侧和供给侧出发,基于不同的利益产生了不同的信仰,各自发明了X.25和TCP/IP等协议,展开了激烈的竞争。X.25网络架构代表了“智能网络‘傻’终端”的电信思想,即网络是复杂的,终端要尽可能简单。TCP/IP网络架构则代表了“智能终端‘傻’网络”的计算机思想,复杂性在终端,网络尽可能简单。
电信业信仰中心化的控制,以能够为用户提供更安全和质量更高的通信服务为主旨,因而,他们基于X.25的数据通信网络,主张网络与业务不分离,以最大限度地降低终端用户的复杂性,将尽可能多的智能和控制设计在网络中。计算机业信仰平等、分布和开放性,以能够让人人都参与到计算机网络的发展中为主旨,基于TCP/IP的计算机网络,主张将与通信相关的部分(IP网络)与高层应用(终端)分离,最大限度地简化IP网络的设计,将尽可能多的复杂性和控制放在用户的终端上。
双方都希望在自己控制的地盘上多干点活,以减轻对方的负担,显得很“无私”,其实不然。双方都是为了利益。架构之争背后的逻辑是活干得多,控制权就多,利益就大。于是互联网终端与网络功能的划分,从一个技术活变成了经济账,形成了两大利益阵营。经过30多年的激烈竞争,在摩尔定律的推动下,TCP/IP技术路线在20世纪90年代初等来了WWW强援,决定性地胜出了这场网络技术路线的竞争。
因特网架构委员会(Internet Architecture Board, IAB)和因特网工程任务组(The Internet Engineering Task Force, IETF)是互联网架构的“宗教法庭”,联手负责架构路线的政治正确性和技术标准准确性,以阻止任何企图破坏“端到端透明”架构的政策和技术。直到大约10年前,TCP/IP在计算机联网方面的统治地位巩固后,他们才开始松动了这方面的“管制”,允许网络地址转换(NAT)、防火墙和内容分发网络(CDN)技术标准,形成RFC1。
即使在今天,30年“战争”的遗迹仍随处可见。比如,现在的大学里还有两门课程,“计算机网络”和“数据通信”,这两个叫法一个来自计算机行业,一个来自电信行业。再如,计算机界习惯采用水平方向和分层方式绘图,电信行业习惯用垂直方向和分块方式绘图。
作为计算机联网路线“富二代”的互联网巨头们,享受了大战胜利后的巨大红利,“互联网思维”主导了网络行业的“普世价值”。“战败”后的全球电信业,逐步放弃了X.25/ATM等“落后”的技术路线,并且经过IP电信网、下一代网络(NGN)等几番改良失败后,只能不甘心地去做互联网的“网络马车夫”——比特管道了。其实,早在30多年前,全球电信运营商管道化的命运就被互联网的这一架构决定了。
缺陷
天下没有免费的午餐,也没有完美的架构。今日互联网的几乎所有重要特征,包括优点和问题,创新和漏洞,都与这一架构有关。
最初设计的互联网架构,IP over Everything, Everything over IP2,活脱脱就像一个拥有IP小蛮腰的少女。虽简洁而优美,但太过柔弱。它所提供的只能是尽力而为的、没有安全和质量保证的连接。最要命的是,这种架构假设,是建立在用户之间彼此信任,用户和互联网服务提供商(ISP)之间彼此信任的基础上的,并且安全责任由用户承担,用户必须是“计算机专家”。于是乎,从一流到三流的互联网专家都开始努力,致力于用自己的审美观改造互联网架构。
一些技术,如服务质量(QoS)、组播(Multicast)等,试图让IP多劳动,让腰肢变粗。一些技术,如NAT和应用层网关(ALG)等,直接让IP闪了腰。一些技术,如因特网协议安全(IPSec)和防火墙,让IP小蛮腰上箍上了安全带。一些技术,如多协议标签交换(MPLS)等隧道技术,让IP小蛮腰被缠绕了。一些技术,如应用层流量优化(Application-Layer Traffic Optimization, ALTO),希望IP小蛮腰不要那么冷艳,送些秋波给应用层。IPv6也在争做互联网的又一个小蛮腰。
这些技术都希望让小蛮腰工作得更好,让小蛮腰做更多的工作,但都只是从局部、从自身考虑问题。这些对IP小蛮腰的增肥术,有些失败了,如QoS,Multicast,IPSec等,也有些成功了,如NAT、CDN、防火墙等。但它们还是让小蛮腰开始出现了中年危机。
随着互联网IP腰身变得粗壮,脚和头也在悄然发生着重大变化。在链路层,以太网技术几乎一统江湖了。在网络层,IPv4依然健在,靠着动态主机配置协议(DHCP)和NAT等保健品,不断延展寿命,但仍然有腰痛的副作用。在传输层,虽然TCP和UDP3依然是双雄称霸,但基于TCP的HTTP4已经笑傲江湖,何况它还包括增加了安全能力的HTTPS/TLS5。
演进
以TCP/IP为代表的“智能终端‘傻’网络”架构,将互联网的复杂性移交给了网络边缘,导致网络运营商失去了对边缘和应用的控制力,直接颠覆了整个信息通信业的格局:全球电信营运商被逐步管道化,同时网络边缘的OTT6(如谷歌)和智能终端企业(如苹果)崛起。
互联网架构设计,明确地将复杂性交给网络边缘,但网络边缘的角色能力不同,尤其是用户和互联网内容服务商(ICP)的能力差异明显。架构没有进一步明确,复杂性是应该用户侧多些,还是ICP侧多些,或者是无所谓。
这给“傻瓜型”网民带来了两个大麻烦。一是用户必须是计算机专家,才可能使用好互联网;二是用户必须是安全专家和软件专家,才可能为自己终端的安全和应用维护负责。这直接让全球亿万不懂计算机的普通人,难以发展成为网民。
解决架构问题的基本思路有三个。一是把智能迁回至网络,增加网络的复杂性,降低终端的复杂性,以方便用户操控和提升用户安全性。二是把智能继续保留在终端上,但尽量向用户屏蔽,类似傻瓜相机的工作机理。三是把智能从用户侧迁移到云端。
第一种思路,大约从1998年开始,以电信运营商为代表。网络运营商以只引入IP技术,不引入互联网架构和信仰的方式,发明了基于IP的软交换、NGN、IMS和IPTV等架构,试图将控制权重新转移回网络,但几乎都失败了。
第二种思路,大约从2007年开始,以智能手机和应用商店为代表。苹果的iPhone等设备把多点触屏技术引入智能手机,向用户屏蔽了复杂的计算机键盘和鼠标,人机交互门槛大幅降低,终于让幼儿和老人也成为了(移动)互联网的用户。另外,应用商店降低了用户选择、安装和维护应用软件的门槛,也提升了用户对应用软件的信任度(尤其是在封闭的iOS环境中)。
第三种思路,大约从2006年开始,以Amazon推出亚马逊云服务(AWS)为代表,把用户软件和应用的复杂性迁移到云端。如果说传统PC软件/互联网架构要把每一个用户都变成系统管理员,那么云/软件即服务(SaaS)则是把程序员变成了系统管理员,解放了每一个软件用户。
30多年前,TCP/IP将复杂性移到了网络边缘,是一次行业级的重大变化,形成了基于IP的全球性的互联网信息基础设施,催生了谷歌等互联网巨头和苹果等智能手机大佬。现在,云计算将复杂性从用户网络边缘迁移到了云端网络边缘,也是一次行业级的重大变化。目前正在形成的新一代的全球信息基础设施的变化,必将对数据中心、大数据和人工智能等领域产生颠覆性的影响。
互联网结构虽已千疮百孔,但撼技术易,撼架构难。目前看来,不直接改变互联网基础设施的“智能终端‘傻’网络”的架构,一边利用智能手机等屏蔽用户使用互联网的复杂性,一边利用云计算把复杂性迁移到云端,是最可能的演进路径。 ■
脚注:
1 Request For Comments,是一系列以编号排定的文件。文件收集了与互联网相关的信息,以及UNIX和互联网社区的软件文件。基本的互联网通信协议都在RFC文件内有详细说明。RFC文件还在标准内额外加入了许多论题,几乎所有的互联网标准都有收录在RFC文件中。
2 IP over everything 指在 TCP/IP 体系结构下,IP 通过网络接口层可以运行在不同的物理网络之上;everything over IP 指在 TCP/IP 体系结构下,各种网络应用均是建立在 IP 基础之上。
3 TCP和UDP都是传输层协议,TCP提供数据可靠传输,UDP提供不可靠传输。
4超文本传输协议。
5 HTTPS是安全版的HTTP协议,TLS是传输安全层协议。
6 OTT 是“Over The Top”的缩写,是通信行业非常流行的一个词汇,这个词汇来源于篮球等体育运动,是“过顶传球”之意,指的是球类运动员在他们头上来回传送而到达目的地。即互联网公司越过运营商,发展基于开放互联网的各种视频及数据服务业务,强调服务与物理网络的无关性。
所有评论仅代表网友意见